This invention relates generally to satellite navigation receivers and more particularly to interference mitigation in a satellite navigation receiver.
Satellite navigation systems, such as GPS (USA) and GLONASS (Russia), are well known in the art and are intended for highly accurate self-positioning of users possessing special navigation receivers. A navigation receiver receives and processes radio signals transmitted by satellites located within line-of-sight distance of the receivers. The satellite signals comprise carrier signals that are modulated by pseudo-random binary codes. The receiver measures the time delay of the received signal relative to a local reference clock or oscillator. These measurements enable the receiver to determine the so-called pseudo-ranges between the receiver and the satellites. The pseudo-ranges are different from the ranges (distances) between the receiver and the satellites due to various noise sources and variations in the time scales of the satellites and receiver. If the number of satellites is large enough, then the measured pseudo-ranges can be processed to determine the user location and coordinate time scales.
The requirement of accurately determining user location with a high degree of precision, and the desire to improve the stability and reliability of measurements, have led to the development of differential navigation (DN). In differential navigation, the task of finding the user position, also called the Rover, is performed relative to a Base station (Base). The precise coordinates of the Base station are known and the Base station is generally stationary during measurements. Since the position of the satellites is also known, the range of the Base to each of the satellites can be determined by comparing the position of the Base with the position of each of the satellites. The Base station also has a navigation receiver which receives and processes the signals of the satellites to generate pseudo-range measurements, as discussed above, from the Base to each satellite. The Base then compares these measurements with the expected range to each of the satellites. Any difference between the pseudo-range calculated measurements and the expected range to the satellites represents an error in the pseudo-range calculations. For relatively short distances between the Rover and the Base (e.g., less than 20 km), these range errors are strongly correlated (e.g., are essentially the same for both the Rover and the Base). Therefore, by transmitting the pseudo-range error measurements made at the Base to the Rover (e.g., via wireless communication channel), the pseudo-range of each of the satellites to the Rover, as calculated at the Rover, can be also be more accurately determined based on the errors calculated at the Base. Accordingly, the location determination is improved in the differential navigation mode because the Rover is able to use the Base station pseudo-range error measurements in order to compensate for the major part of the errors in the Rover measurements.
Various modes of operation are possible while using differential navigation. In post-processing (PP) mode, the Rover's coordinates are determined by co-processing the Base and Rover measurements after all measurements have been completed. This allows for highly accurate location determination, albeit not in real-time, because more data is available for the location determination. In real-time processing (RTP) mode, the Rover's coordinates are determined in real time upon receipt of the Base station information received via the communication channel.
The location determination accuracy of differential navigation may be further improved by supplementing the pseudo-range measurements with measurements of the phases of the satellite carrier signals. If the carrier phase of the signal received from a satellite in the Base receiver is measured and compared to the carrier phase of the same satellite measured in the Rover receiver, measurement accuracy may be obtained to within several percent of the carrier's wavelength. The practical implementation of those advantages, which might otherwise be guaranteed by the measurement of the carrier phases, runs into the problem of ambiguity resolution for phase measurements.
The ambiguities are caused by two factors. First, the difference of distances from any satellite to the Base and Rover is usually much greater than the carrier's wavelength. Therefore, the difference in the phase delays of a carrier signal received by the Base and Rover receivers may substantially exceed one cycle. Second, it is not possible to measure the integer number of cycles from the incoming satellite signals; one can only measure the fractional part. Therefore, it is necessary to determine the integer number of cycles, which is called the “ambiguity”. More precisely, we need to determine the set of all such integer parts for all the satellites being tracked, one integer part for each satellite. One has to determine this set along with other unknown values, which include the Rover's coordinates and the variations in the time scales.
At a high level, the task of generating highly-accurate navigation measurements is formulated as follows: it is necessary to determine the state vector of a system, with the vector containing nΣ unknown components. Those include three Rover coordinates (usually along Cartesian axes X, Y, Z) in a given coordinate system (sometimes time derivatives of coordinates are added too); the variations of the time scales which is caused by the phase drift of the local main reference oscillator in the receiver; and n integer unknown values associated with the ambiguities of the phase measurements of the carrier frequencies. The value of n is determined by the number of different carrier signals being processed, and accordingly coincides with the number of satellite channels actively functioning in the receiver. At least one satellite channel is used for each satellite whose broadcast signals are being received and processed by the receiver. Some satellites broadcast more than one code-modulated carrier signal, such as a GPS satellite which broadcasts a carrier in the L1 frequency band and a carrier in the L2 frequency band. If the receiver processes the carrier signals in both of the L1 and L2 bands, a so-called dual-frequency receiver, the number of satellite channels (n) increases correspondingly. Dual-frequency receivers allow for ionosphere delay correction therefore making ambiguity resolution easier.
Two sets of navigation parameters are measured by the Base and Rover receivers, respectively, and are used to determine the unknown state vector. Each set of parameters includes the pseudo-range of each satellite to the receiver, and the full (complete) phase of each satellite carrier signal. Each pseudo-range is obtained by measuring the time delay of a code modulation signal of the corresponding satellite. The code modulation signal is tracked by a delay-lock loop (DLL) circuit in each satellite tracking channel. The full phase of a satellite's carrier signal is tracked by a phase-lock-loop (PLL) in the corresponding satellite tracking channel. An observation vector is generated as the collection of the measured navigation parameters for specific (definite) moments of time.
The relationship between the state vector and the observation vector is defined by a well-known system of navigation equations. Given an observation vector, the system of equations may be solved to find the state vector if the number of equations equals or exceeds the number of unknowns in the state vector. Conventional statistical methods are used to solve the system of equations: the least squares method, the method of dynamic Kalman filtering, and various modifications of these methods. Practical implementations of these methods in digital form may vary widely. In implementing or developing such a method on a processor, one usually must find a compromise between the accuracy of the results and speed of obtaining results for a given amount of processor capability, while not exceeding a certain amount of loading on the processor.
Most DN receivers not only provide the Rover's coordinates, but also provide a derived vector of velocity of the Rover's movement. A simple method of determining velocity is to measure the amount of time taken to travel a given distance (e.g., between successive location determinations). However, this typically results in a relatively inaccurate estimate of the Rover's velocity. Hence, other methods have been developed. In a first method, the velocity of the Rover is estimated by measuring the Doppler shift in the frequency of the signal received from each satellite to obtain the radial velocity of the Rover relative to each satellite. The radial velocity is then converted to a coordinate velocity of the Rover. To reduce random errors in these velocity measurements, various well-known methods of time smoothing the estimated frequencies are used. One method of determining the radial velocity of a Rover is based on measuring the full-phase incursion in the aforementioned PLL during a preset/measured time interval. The radial velocity of the Rover relative to each satellite is determined by dividing the phase incursion by the time interval and then multiplying the result by the carrier wavelength. Performing this calculation for each of the satellites produces a set of radial velocities of the Rover relative to each of the satellites. Further processing using, for example, the least-squares method produces the Rover's coordinate velocity from this set of radial velocities.
One of the major sources of error in calculating velocity vectors of a Rover using satellite navigation receivers is that satellite signals are difficult to detect in certain circumstances. This is because typical Rovers in DGPS systems operate in various noisy signal environments. Tracking systems operating at such noisy signals often have difficulty producing relatively fine Doppler shift measurements.
Various techniques have been employed to reduce the effect of such interference on measuring Doppler shift of the carrier phase. These techniques have generally relied on the fact that the frequency change over the measured time interval is essentially linear. Thus, by measuring multiple values of the full phase over the measured time interval, it is possible to determine the estimate of the initial phase and its first and second derivatives. These derivatives can be used to fit the received frequency shift measurements to the expected linear relationship.
In another attempt (described in Szames et al, DGPS High Accuracy Aircraft Velocity Determination Using Doppler Measurements, Proceedings of the International Symposium on Kinematic Systems (KIS), Banff, AB, Canada, June 306, 1997), raw Doppler shift derived measurements of velocity are processed using curve-fitting techniques to obtain velocity estimates as good as those using the first order central difference approximation of the carrier phase, without the extra step of determining the first and second order derivatives.